package br.edu.intec.agenda.view;

import br.edu.intec.agenda.entity.Contato;
import br.edu.intec.agenda.exception.DAOException;
import br.edu.intec.agenda.manager.ContatoSession;

public class Agenda {
	
	public static void main(String[] args) {
		
		
		try {
			ContatoSession c = new ContatoSession();
			for (Contato contato : c.listaTodos()) {
				System.out.println(contato.getNome());
			}
		} catch (DAOException e) {
			System.out.println("ERRO: "+e.getMessage());
		}
	}
	
	public static void menu() throws DAOException{
		
		/*Integer opcao = 0;
		
		do {
			System.out.println("Agenda Eletônica: \n" +
					"1 - Novo Contato: \n" +
					"2 - Excluir Contato: \n" +
					"3 - Atualizar Contato: \n" +
					"4 - Listar Contatos: \n" +
					"5 - Sair");
			Scanner scan = new Scanner(System.in);
			opcao = scan.nextInt();
			Contato contato;
			
			switch (opcao) {
			
				case 1:
					contato = new Contato();
					
					System.out.println("Nome: ");
					contato.setNome(scan.next());
					System.out.println();
					System.out.println("Telefone: ");
					contato.setTelefone(scan.next());
					
					dao.save(contato);
					break;
		
				case 2:
					
					contato = new Contato();
					
					List<Contato> contatos = dao.findAll();
					
					for (Contato cont : contatos) {
						System.out.print("ID:"+cont.getId());
						System.out.print("  |  Nome:"+cont.getNome());
						System.out.println("  |  Telefone:"+cont.getTelefone());
					}
					
					System.out.println("Informe o id de quem deseja excluir: ");
					contato.setId(scan.nextInt());
					
					dao.delete(contato);
					break;
					
				case 3:
					
					contato = new Contato();
					
					List<Contato> contatos2 = dao.findAll();
					
					for (Contato cont : contatos2) {
						System.out.print("ID:"+cont.getId());
						System.out.print("  |  Nome:"+cont.getNome());
						System.out.println("  |  Telefone:"+cont.getTelefone());
					}
					
					System.out.println("Informe o id de quem deseja atualizar: ");
					contato.setId(scan.nextInt());
					contato = dao.findById(contato.getId());
					
					System.out.println("Nome("+contato.getNome()+"): ");
					contato.setNome(scan.next());
					System.out.println("Telefone("+contato.getTelefone()+"): ");
					contato.setTelefone(scan.next());
					
					dao.update(contato);					
					break;
					
				case 4:
					
					List<Contato> conts = dao.findAll();
					
					if(conts.isEmpty()){
						System.out.println("Lista Vazia");
						break;
					}
					
					for (Contato cont : conts) {
						System.out.print("Nome: "+cont.getNome());
						System.out.println("  |  Telefone:"+cont.getTelefone());
					}
										
					break;
					
				case 5:
					// não faz nada
					break;
			}
		} while(opcao != 5); */
	} 

}
